1
Plans pour un Code Générique
AI037Lesson 18
00:00

Imaginez que vous êtes un architecte. Au lieu de dessiner un plan fixe pour une seule maison en briques, vous concevez un plan maître plan capable de s'adapter au bois, à l'acier ou au verre. En C++, c'est Programmation générique.

1. Le Mécanisme du Plan

Un liste de paramètres de modèle (par exemple, template <typename T>) introduit des espaces réservés appelés paramètres de type de modèle. Ceux-ci agissent comme des variables de type. Par exemple, dans template <typename T> ostream &print(ostream &os, const T &obj), T est déterminé uniquement lorsque la fonction est appelée.

2. Instanciation

Le compilateur ne compile pas le modèle lui-même en code machine. À la place, instanciation a lieu : le compilateur génère une version spécifique du code uniquement lorsqu'un argument de modèle est fourni. En raison de cela, les définitions doivent généralement résider dans les fichiers d'en-tête.

Plancompare<T>compare(int)compare(vector)Erreur : Sales_data

3. Écrire un Code Indépendant du Type

Pour maximiser la réutilisabilité, suivez la Meilleure Pratique: minimisez les exigences. Écrivez le code en utilisant uniquement l'opérateur < opérateur (via less<T>) réduit les exigences sur les types par rapport à l'utilisation de >, <=, et >=. La validation est souvent reportée ; le compilateur ne peut généralement pas détecter de nombreux erreurs à l'étape de compilation du modèle lui-même ; la plupart apparaissent pendant l'instanciation.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>